1. Field of the Invention
This invention relates generally to wire and wireless communications, and, more particularly, to a method and apparatus for adaptation control for echo cancellation.
2. Description of the Related Art
The proliferation of telecommunications technology has brought many innovations that improve our ability to communicate effectively. The availability of advanced methods of communications also brings forth the need for creative solutions to problems encountered in implementing new advancements. The complex world of signals-in-transit demands intricate solutions to issues not readily contemplated by many in the field. One such issue occurs when one line connects two points of signal originations, or when multiple signals share a common path. In these situations, echoes from the original signals are generated, interfering with all of the signals on the line. The ability to deal with this problem effectively is critical to the quality of the sound and data that can be transmitted and received, particularly during teleconferences and data exchange sessions, such as modulator-demodulator (modem) use.
High-quality audio is a key component of teleconferencing. However, audio quality can be substantially diminished by signal echo. Echo can occur when a signal encounters an impedance mismatch at any point of the signal line, such as at any point on a telephone circuit. When a signal encounters a point of impedance mismatch, the signal is reflected from that point as an echo. The echo can interfere with signals from a far end point of origination, called a far-end signal. These echoes render the far-end speech signal corrupt and can cause significant degradation of the signal, and as such, are not desirable. Furthermore, echo problems can also cause severe problems during data exchange sessions, such as the operation of modems, used for the transmission of digital signals over telephone lines. Among the problems that can occur during data communication sessions are high bit-error rates and connection termination.
During a voice telecommunication session, echoes can cause unacceptable corruption of signals. Among the problems echoes can cause are: clipping, where a speaker""s voice is broken up; dropout, where the voice is suddenly cut off when any noise is introduced at the connecting site; attenuation, where a momentary loss of volume occurs during the voice communication; and artifacts, where unintelligible voice remnants are heard during pauses.
Audio systems typically employ some form of an echo cancellation feature. Nevertheless, audio quality can suffer as a result of an ineffective echo cancellation mechanism. Digital filters can be used to implement echo cancellation circuits. Generally, a dynamic system, known as an adaptive balancing circuit, is used for echo cancellation. Adaptive balance systems seek coefficients for its digital balancing filter to maintain echo cancellation. The filter coefficients are changed accordingly with changing conditions in the communication line.
Due to mismatches in the impedance characteristics of the communication lines, some energy from the received far-end signal is reflected back and turned into an unwanted echo at the near-end signal point of origin. To minimize the effect of the near-end echo, an adaptive filter is employed. This adaptive filter performs auto-balancing functions by automatically adjusting its response by matching its filter coefficients to the varying conditions in the signal line.
Even with the implementation of adaptive filters, certain problems remain. The current methods employed in adaptive filters are error-prone and require additional circuitry to eliminate signal errors. Furthermore, current adaptive filters lack the accuracy to effectively eliminate errors when both near-end and far-end signals appear at the same time. This double-talker situation causes current adaptive filters and adaptive filter control circuits to be inaccurate, and more costly and complex to implement.
Some embodiments of the current implementations of adaptive filters employ sign-based algorithms, which require further integer estimations and additional comparator circuitry. Also, the sine-based algorithms require the use of multiple stages of correlations of signals. These shortfalls create problems in many telecommunication applications, including telephone conversations, tone divergence situations, double-talker situations, and modem connections.
The present invention is directed to overcoming, or at least reducing the effects of, one or more of the problems set forth above.
In one aspect of the invention, a method is provided for controlling an adaptive balance filter. The method comprises performing a correlation function upon a first input signal, the first input signal being a signal from a far-end location of a communication line, with a second input signal, the second input signal being an echo signal resulting from the signal from the far-end location; calculating a value of the correlation; determining an error threshold value; determining a correlation threshold value; determining whether a third input signal, the third input signal being a signal from a near-end location of the communication line, is an error signal or an actual communication signal; determining whether to perform adaptive filtering upon the third input signal, based upon the determination of whether the third input signal is an error or an actual communication signal; determining whether the value of correlation exceeds the error threshold value; determining whether the value of correlation exceeds the correlation threshold value; and adjusting an adaptive balance filter responsive to the calculation of the value of correlation based upon the determination whether the value of correlation exceeds the error threshold value and the determination whether the value of correlation exceeds the correlation threshold value.
In another aspect of the invention, an apparatus is provided for controlling an adaptive balancing filter. The apparatus comprises a transmit path, an adaptive balance control circuit, and a receive path.